package com.ljz.service;

/**
 * Created by jiazhang on 2017/4/12.
 */

import com.ljz.dao.PersonRepository;
import com.ljz.entity.Person;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import javax.transaction.Transactional;

/**
 * 两条 sql 语句同时在一个方法中执行，为了防止一个 sql 语句执行成功而另一个 sql 语句执行失败，引入了事务管理，需要在方法上加 @Transactional事务注解
 */

@Service
public class PersonService {

    @Autowired
    private PersonRepository personRepository;

    /**
     * 事务管理测试
     * 两条数据同时成功，或者同时不成功
     * 保证数据库数据的完整性和一致性
     */
    @Transactional
    public void insertTwo() {
        Person personA = new Person();
        personA.setName("衣快链");
        personA.setAge(19);
        personRepository.save(personA);


        Person personB = new Person();
        personB.setName("云制造");
        personB.setAge(19);
        personRepository.save(personB);
    }
}
